package com.hsgene.user.dto.address;

import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.hsgene.common.util.date.TimeJsonDeserializer;

import java.io.Serializable;
import java.util.Date;

/**
 * @description:
 * @projectName: hdas-geneshop-server
 * @package: com.hsgene.user.dto.address
 * @author: maodi
 * @createDate: 2018/11/8 15:33
 * @version: 1.0
 * Copyright: Copyright (c) 2018
 */
public class AddressDetails implements Serializable {
    private static final long serialVersionUID = 903466289906308824L;

    /**
     * 收货地址逻辑主键
     */
    private String id;

    /**
     * 收件人名称
     */
    private String consignee;

    /**
     * 收件人电话
     */
    private String consigneePhone;

    /**
     * 邮编
     */
    private String zipCode;

    /**
     * 收货地址省级名称
     */
    private String province;

    /**
     * 省份id
     */
    private String provinceId;

    /**
     * 收货地址市级名称
     */
    private String city;

    /**
     * 城市id
     */
    private String cityId;

    /**
     * 收货地址区县级名称
     */
    private String district;

    /**
     * 区县id
     */
    private String districtId;

    /**
     * 收货地址详细地址
     */
    private String address;

    /**
     * 收货地址地址全名称
     */
    private String fullName;

    /**
     * 是否为默认地址（0-否，1-是）
     */
    private Integer isDefault;

    /**
     * 备注
     */
    private String remarks;

    /**
     * 地区id（区县级id）
     */
    private String areaId;

    /**
     * 创建时间
     */
    @JsonDeserialize(using = TimeJsonDeserializer.class)
    private Date createDateTime;

    /**
     * 修改时间
     */
    @JsonDeserialize(using = TimeJsonDeserializer.class)
    private Date updateDateTime;

    /**
     * 地址类型（0-自己所在地址， 1-收货地址）
     */
    private Integer addressType;

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getConsignee() {
        return consignee;
    }

    public void setConsignee(String consignee) {
        this.consignee = consignee;
    }

    public String getConsigneePhone() {
        return consigneePhone;
    }

    public void setConsigneePhone(String consigneePhone) {
        this.consigneePhone = consigneePhone;
    }

    public String getZipCode() {
        return zipCode;
    }

    public void setZipCode(String zipCode) {
        this.zipCode = zipCode;
    }

    public String getProvince() {
        return province;
    }

    public void setProvince(String province) {
        this.province = province;
    }

    public String getCity() {
        return city;
    }

    public void setCity(String city) {
        this.city = city;
    }

    public String getDistrict() {
        return district;
    }

    public void setDistrict(String district) {
        this.district = district;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getFullName() {
        return fullName;
    }

    public void setFullName(String fullName) {
        this.fullName = fullName;
    }

    public Integer getIsDefault() {
        return isDefault;
    }

    public void setIsDefault(Integer isDefault) {
        this.isDefault = isDefault;
    }

    public String getRemarks() {
        return remarks;
    }

    public void setRemarks(String remarks) {
        this.remarks = remarks;
    }

    public String getAreaId() {
        return areaId;
    }

    public void setAreaId(String areaId) {
        this.areaId = areaId;
    }

    public Date getCreateDateTime() {
        return createDateTime;
    }

    public void setCreateDateTime(Date createDateTime) {
        this.createDateTime = createDateTime;
    }

    public Date getUpdateDateTime() {
        return updateDateTime;
    }

    public void setUpdateDateTime(Date updateDateTime) {
        this.updateDateTime = updateDateTime;
    }

    public Integer getAddressType() {
        return addressType;
    }

    public void setAddressType(Integer addressType) {
        this.addressType = addressType;
    }

    public String getProvinceId() {
        return provinceId;
    }

    public void setProvinceId(String provinceId) {
        this.provinceId = provinceId;
    }

    public String getCityId() {
        return cityId;
    }

    public void setCityId(String cityId) {
        this.cityId = cityId;
    }

    public String getDistrictId() {
        return districtId;
    }

    public void setDistrictId(String districtId) {
        this.districtId = districtId;
    }
}
